在過去幾天的文章中,我們學習了變數、if / else 條件判斷、List 串列與 Dictionary 字典。
當我們的程式碼越寫越多時,如果每次要執行某個功能(例如:計算折扣、格式化文字、查詢天氣)都把程式碼重寫一遍,不僅會讓檔案變得又長又亂,之後想要修改時也會非常痛苦。
為了讓程式碼可以重複使用且易於維護,我們需要使用 Python 的 Function(函數 / 函式)。
什麼是 Function(函數)?
你可以把 Function 想像成一台「積木」或是「小機器」:
# 定義一個名為 greet 的函數
def greet(user_name):
message = f"你好,{user_name}!我是你的 AI 生活助理。"
return message
# 呼叫(使用)這個函數
result = greet("小明")
print(result)
執行結果:你好,小明!我是你的 AI 生活助理。
透過定義函數,未來只要需要發送招呼語,我們只需要呼叫 greet("名字") 即可,不需要再重複寫字串拼接的邏輯。
帶有邏輯處理的 Function
函數內部可以包涵我們前幾天學到的所有技巧,例如條件判斷與字典操作。
假設我們寫一個幫使用者判斷「今天出門穿著建議」的函數:
def get_clothing_advice(temperature):
if temperature < 15:
return "今天天氣較冷,建議穿厚外套與長褲。"
elif temperature < 22:
return "天氣涼爽,建議穿薄外套或長袖衫。"
else:
return "天氣炎熱,穿短袖即可!"
# 測試不同溫度
print(get_clothing_advice(12))
print(get_clothing_advice(26))
執行結果:今天天氣較冷,建議穿厚外套與長褲。 天氣炎熱,穿短袖即可!
Function 與 AI Agent 有什麼關係?
如果你了解了 Function 的運作機制,你就已經掌握了 AI Agent 呼叫外部工具(Tool Calling / Function Calling) 的核心概念!
大語言模型(LLM)本身只是一套文字生成模型,它無法直接存取網路、無法讀取資料庫、也無法直接操作你的手機。那麼 AI 助理是怎麼幫我們查天氣、訂機票或發送 Email 的呢?
答案就是:工程師把這些功能寫成 Python Function,並授權給 AI 使用!
Agent 工具呼叫的 3 步驟: